package beans.aplicacao;

import java.sql.SQLException;
import java.util.ArrayList;

import javax.faces.bean.ManagedBean;
import javax.faces.model.SelectItem;

import dao.aplicacao.VersaoDao;

import modelos.aplicacao.VersaoModel;

@ManagedBean(name = "versaoBean")
public class VersaoBean {
	
	private int idModelo;
	
	private String versao;
	
	private VersaoDao dao = new VersaoDao();
	
	private ArrayList<SelectItem> mapVersao = new ArrayList<SelectItem>();
	
	private VersaoModel dadosTela;
	
	private double valorVersaoSelecionada = 0F;
	
	private ArrayList<VersaoModel> versoes;
	
	public ArrayList<SelectItem> getMapVersao() throws SQLException{
		
		ArrayList<VersaoModel> listVersao = dao.getVersao(idModelo);
	
		for(VersaoModel lv:listVersao)
			mapVersao.add(new SelectItem(lv.getId(),lv.getNome()));
		
		return mapVersao;
	}

	public int getIdModelo() {
		return idModelo;
	}

	public void setIdModelo(int idModelo) {
		this.idModelo = idModelo;
	}

	public String getVersao() {
		return versao;
	}

	public void setVersao(String versao) {
		this.versao = versao;
	}

	public void setMapVersao(ArrayList<SelectItem> mapVersao) {
		this.mapVersao = mapVersao;
	}

	public VersaoModel getDadosTela() throws SQLException {
		
		dadosTela = dao.getMarcaModelo(idModelo);
		
		return dadosTela;
	}

	public void setDadosTela(VersaoModel dadosTela) {
		this.dadosTela = dadosTela;
	}

	public double getValorVersaoSelecionada() {
		return valorVersaoSelecionada;
	}

	public void setValorVersaoSelecionada(double valorVersaoSelecionada) {
		this.valorVersaoSelecionada = valorVersaoSelecionada;
	}
	
	public void changeVersao() throws SQLException{
		System.out.println(versao);
		if(!versao.equals(""))
			valorVersaoSelecionada = dao.getValorVersaoSelecionada(versao);
	}

	public ArrayList<VersaoModel> getVersoes() throws SQLException {

		versoes = dao.getVersao(idModelo);
		return versoes;
	}

	public void setVersoes(ArrayList<VersaoModel> versoes) {
		this.versoes = versoes;
	}
}
